home *** CD-ROM | disk | FTP | other *** search
-
- The Apache HTTP Server Project
-
- http://www.apache.org/
-
- January 1998
-
- The Apache Project is a collaborative software development effort aimed
- at creating a robust, commercial-grade, featureful, and freely-available
- source code implementation of an HTTP (Web) server. The project is
- jointly managed by a group of volunteers located around the world, using
- the Internet and the Web to communicate, plan, and develop the server and
- its related documentation. These volunteers are known as the Apache Group.
- In addition, hundreds of users have contributed ideas, code, and
- documentation to the project. This file is intended to briefly describe
- the history of the Apache Group, recognize the many contributors, and
- explain how you can join the fun too.
-
- In February of 1995, the most popular server software on the Web was the
- public domain HTTP daemon developed by Rob McCool at the National Center
- for Supercomputing Applications, University of Illinois, Urbana-Champaign.
- However, development of that httpd had stalled after Rob left NCSA in
- mid-1994, and many webmasters had developed their own extensions and bug
- fixes that were in need of a common distribution. A small group of these
- webmasters, contacted via private e-mail, gathered together for the purpose
- of coordinating their changes (in the form of "patches"). Brian Behlendorf
- and Cliff Skolnick put together a mailing list, shared information space,
- and logins for the core developers on a machine in the California Bay Area,
- with bandwidth and diskspace donated by HotWired and Organic Online.
- By the end of February, eight core contributors formed the foundation
- of the original Apache Group:
-
- Brian Behlendorf Roy T. Fielding Rob Hartill
- David Robinson Cliff Skolnick Randy Terbush
- Robert S. Thau Andrew Wilson
-
- with additional contributions from
-
- Eric Hagberg Frank Peters Nicolas Pioch
-
- Using NCSA httpd 1.3 as a base, we added all of the published bug fixes
- and worthwhile enhancements we could find, tested the result on our own
- servers, and made the first official public release (0.6.2) of the Apache
- server in April 1995. By coincidence, NCSA restarted their own development
- during the same period, and Brandon Long and Beth Frank of the NCSA Server
- Development Team joined the list in March as honorary members so that the
- two projects could share ideas and fixes.
-
- The early Apache server was a big hit, but we all knew that the codebase
- needed a general overhaul and redesign. During May-June 1995, while
- Rob Hartill and the rest of the group focused on implementing new features
- for 0.7.x (like pre-forked child processes) and supporting the rapidly growing
- Apache user community, Robert Thau designed a new server architecture
- (code-named Shambhala) which included a modular structure and API for better
- extensibility, pool-based memory allocation, and an adaptive pre-forking
- process model. The group switched to this new server base in July and added
- the features from 0.7.x, resulting in Apache 0.8.8 (and its brethren)
- in August.
-
- After extensive beta testing, many ports to obscure platforms, a new set
- of documentation (by David Robinson), and the addition of many features
- in the form of our standard modules, Apache 1.0 was released on
- December 1, 1995.
-
- Less than a year after the group was formed, the Apache server passed
- NCSA's httpd as the #1 server on the Internet.
-
- ============================================================================
-
- Current Apache Group in alphabetical order as of 1 January 1998:
-
- Brian Behlendorf Organic Online, California
- Ken Coar MeepZor Consulting, New England, USA
- Mark J. Cox C2Net Europe, UK
- Ralf S. Engelschall Munich, Germany.
- Roy T. Fielding UC Irvine, California
- Dean Gaudet Transmeta Corporation, California
- Rob Hartill Internet Movie DB, UK
- Jim Jagielski jaguNET ISP, Maryland
- Alexei Kosut Stanford University, California
- Martin Kraemer Munich, Germany
- Ben Laurie Freelance Consultant, UK
- Chuck Murcko The Topsail Group, Pennsylvania
- Doug MacEachern TOG Research Institute, Massachusetts
- Aram W. Mirzadeh Qosina Corporation, New York
- Sameer Parekh C2Net, California
- Paul Sutton C2Net Europe, UK
- Marc Slemko Canada
- Randy Terbush Zyzzyva ISP, Nebraska
- Dirk-Willem van Gulik Freelance Consultant, Italy
- Andrew Wilson Freelance Consultant, UK
-
- Apache Emeritae (old group members now off doing other things)
-
- David Robinson Cambridge University, UK
- Robert S. Thau MIT, Massachusetts
-
- Other major contributors
-
- Rob McCool (original author of the NCSA httpd),
- Brandon Long and Beth Frank (NCSA Server Development Team, post-1.3),
- Paul Richards (convinced the group to use remote CVS after 1.0),
- Kevin Hughes (creator of all those nifty icons),
- Henry Spencer (author of the regex library), Garey Smiley (OS/2 port),
- Howard Fear (mod_include), Florent Guillaume (language negotiation),
- Ambarish Malpani (NT port).
-
- Many 3rd-party modules, frequently used and recommended, are also
- freely-available and linked from the related projects page:
- <http://www.zyzzyva.com/module_registry/>, and their authors frequently
- contribute ideas, patches, and testing. In particular, Doug MacEachern
- (mod_perl) and Rasmus Lerdorf (mod_php).
-
- Hundreds of people have made individual contributions to the Apache
- project. Patch contributors are listed in the src/CHANGES file.
- Frequent contributors have included Petr Lampa, Tom Tromey,
- James H. Cloos Jr., Ed Korthof, Nathan Neulinger, Jason S. Clary,
- Jason A. Dour, Michael Douglass, Tony Sanders, Brian Tao, Michael Smith,
- Adam Sussman, Nathan Schrenk, Matthew Gray, and John Heidemann.
-
- ============================================================================
-
- How to become involved in the Apache project
-
- There are several levels of contributing. If you just want to send
- in an occasional suggestion/fix, then you can just use the bug reporting
- form at <http://www.apache.org/bug_report.html>. You can also subscribe
- to the announcements mailing list (apache-announce@apache.org) which we
- use to broadcast information about new releases, bugfixes, and upcoming
- events. There's a lot of information about the development process (much
- of it in serious need of updating) to be found at <http://dev.apache.org/>.
-
- If you'd like to become an active contributor to the Apache project (the
- group of volunteers who vote on changes to the distributed server), then
- you need to start by subscribing to the new-httpd@apache.org mailing list.
- One warning though: traffic is high, 1000 to 1500 messages/month.
- To subscribe to the list, send "subscribe new-httpd" in the body of
- a message to <majordomo@apache.org>. We recommend reading the list for
- a while before trying to jump in to development.
-
- NOTE: The developer mailing list (new-httpd@apache.org) is not
- a user support forum; it is for people actively working on development
- of the server code and documentation, and for planning future
- directions. If you have user/configuration questions, send them
- to the USENET newsgroup "comp.infosystems.www.servers.unix".
-
- There is a core group of contributors (informally called the "core")
- which was formed from the project founders and is augmented from time
- to time when core members nominate outstanding contributors and the
- rest of the core members agree. The core group focus is more on
- "business" issues and limited-circulation things like security problems
- than on mainstream code development. The term "The Apache Group"
- technically refers to this core of project contributors.
-
- The Apache project is a meritocracy -- the more work you have done, the more
- you are allowed to do. The group founders set the original rules, but
- they can be changed by vote of the active members. There is a group
- of people who have logins on our server (hyperreal.com) and access to the
- CVS repository. Everyone has access to the CVS snapshots. Changes to
- the code are proposed on the mailing list and usually voted on by active
- members -- three +1 (yes votes) and no -1 (no votes, or vetoes) are needed
- to commit a code change during a release cycle; docs are usually committed
- first and then changed as needed, with conflicts resolved by majority vote.
-
- Our primary method of communication is our mailing list. Approximately 40
- messages a day flow over the list, and are typically very conversational in
- tone. We discuss new features to add, bug fixes, user problems, developments
- in the web server community, release dates, etc. The actual code development
- takes place on the developers' local machines, with proposed changes
- communicated using a patch (output of a unified "diff -u oldfile newfile"
- command), and committed to the source repository by one of the core
- developers using remote CVS. Anyone on the mailing list can vote on a
- particular issue, but we only count those made by active members or people
- who are known to be experts on that part of the server. Vetoes must be
- accompanied by a convincing explanation.
-
- New members of the Apache Group are added when a frequent contributor is
- nominated by one member and unanimously approved by the voting members.
- In most cases, this "new" member has been actively contributing to the
- group's work for over six months, so it's usually an easy decision.
-
- The above describes our past and current (as of January 1998) guidelines,
- which will probably change over time as the membership of the group
- changes and our development/coordination tools improve.
-
- ============================================================================
-
- Why Apache Is Free
-
- Apache exists to provide a robust and commercial-grade reference
- implementation of the HTTP protocol. It must remain a platform upon which
- individuals and institutions can build reliable systems, both for
- experimental purposes and for mission-critical purposes. We believe the
- tools of online publishing should be in the hands of everyone, and
- software companies should make their money providing value-added services
- such as specialized modules and support, amongst other things. We realize
- that it is often seen as an economic advantage for one company to "own" a
- market - in the software industry that means to control tightly a
- particular conduit such that all others must pay. This is typically done
- by "owning" the protocols through which companies conduct business, at the
- expense of all those other companies. To the extent that the protocols of
- the World Wide Web remain "unowned" by a single company, the Web will
- remain a level playing field for companies large and small. Thus,
- "ownership" of the protocol must be prevented, and the existence of a
- robust reference implementation of the protocol, available absolutely for
- free to all companies, is a tremendously good thing.
-
- Furthermore, Apache is an organic entity; those who benefit from it
- by using it often contribute back to it by providing feature enhancements,
- bug fixes, and support for others in public newsgroups. The amount of
- effort expended by any particular individual is usually fairly light, but
- the resulting product is made very strong. This kind of community can
- only happen with freeware -- when someone pays for software, they usually
- aren't willing to fix its bugs. One can argue, then, that Apache's
- strength comes from the fact that it's free, and if it were made "not
- free" it would suffer tremendously, even if that money were spent on a
- real development team.
-
- We want to see Apache used very widely -- by large companies, small
- companies, research institutions, schools, individuals, in the intranet
- environment, everywhere -- even though this may mean that companies who
- could afford commercial software, and would pay for it without blinking,
- might get a "free ride" by using Apache. We would even be happy if some
- commercial software companies completely dropped their own HTTP server
- development plans and used Apache as a base, with the proper attributions
- as described in the LICENSE file.
-
- Thanks for using Apache!
-
- ============================================================================
- Roy Fielding, June 1997
-
- If you are interested in other WWW history, see <http://www.webhistory.org/>
-